Self optimizing and reducing user experiences

ABSTRACT

In an example embodiment, a method of dynamically optimizing a user interface on an electronic device is provided. A user interface is presented to a user, wherein the user interface includes one or more elements. User interactions with the one or more elements are then measured. The one or more elements of the user interface are then dynamically modified based on the measured user interaction.

BACKGROUND

User experience is a broad term covering many aspects of experiences ofusers with computing products or services accessed through the computingproducts (such as web sites). The user experience includes not only theuser interface, but also the graphics and physical interaction. For themost part, such user experience is somewhat static in nature. The layoutof a website is generally the same for most or all users who access it,until such time as the web designer alters the layout. To the extentthat different users are served different layouts, they are generallydistributed based on preset criteria (such as hardware specifications ofthe user device).

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a network diagram depicting a client-server system, withinwhich one example embodiment may be deployed.

FIG. 2 is a diagram illustrating a progression, in accordance with anexample embodiment, of dynamic alteration of a user interface.

FIG. 3 is a diagram illustrating a progression, in accordance withanother example embodiment, of dynamic alteration of a user interface.

FIG. 4 is a diagram illustrating a progression, in accordance withanother example embodiment, of dynamic alteration of a user interface.

FIG. 5 is a diagram illustrating a progression, in accordance withanother example embodiment, of dynamic alteration of a user interface.

FIG. 6 is an interaction diagram illustrating a method, in accordancewith an example embodiment, of dynamically altering a user interface.

FIG. 7 is a flow diagram illustrating a method, in accordance with anexample embodiment, of dynamically altering a user interface.

FIG. 8 is a flow diagram illustrating a method, in accordance withanother example embodiment, of dynamically altering a user interface.

FIG. 9 shows a diagrammatic representation of a machine in the exampleform of a computer system within which a set of instructions for causingthe machine to perform any one or more of the methodologies discussedherein may be executed.

DETAILED DESCRIPTION

The description that follows includes illustrative systems, methods,techniques, instruction sequences, and computing machine programproducts that embody illustrative embodiments. In the followingdescription, for purposes of explanation, numerous specific details areset forth in order to provide an understanding of various embodiments ofthe inventive subject matter. It will be evident, however, to thoseskilled in the art that embodiments of the inventive subject matter maybe practiced without these specific details. In general, well-knowninstruction instances, protocols, structures, and techniques have notbeen shown in detail.

Although the present embodiments have been described with reference tospecific example embodiments, it will be evident that variousmodifications and changes may be made to these embodiments withoutdeparting from the broader spirit and scope of the embodiments.Accordingly, the specification and drawings are to be regarded in anillustrative rather than a restrictive sense.

In an example embodiment, various aspects of a user experience aredynamically optimized in order to provide a customized and efficientexperience for the user. Elements within a user interface, such asbutton size, advertising sizing, font, color, placement, the presencesof certain interface objects, etc., can all be dynamically altered basedon usage information as well as other factors (e.g., demographicinformation, information from user profiles, etc.). For example, asearch bar displayed on a web site may change in size and location onthe screen based on how often the user utilized the search bar. In theextreme, all elements but the search bar could be removed for users whoprimarily use the web site for searches.

In another example embodiments, the usage information is gathered fromtouchscreen usage on a user device. Key presses indicating where a userhas pressed a touchscreen with his or her finger (or stylus) may betracked to determine the frequency of presses on various elements of theuser interface and areas of the touchscreen. This information may thenbe used to dynamically modify the user interface, by atrophying outlesser used elements and areas and introducing in new elements.

The dynamic adjustment may be performed by the local user device, or maybe performed at the server-level by, for example, a web server. In someembodiments, a combination of local user devices and one or more serversmay be used to perform the dynamic adjustment.

FIG. 1 is a network diagram depicting a client-server system 100, withinwhich one example embodiment may be deployed. A networked system 102, inthe example forms of a network-based marketplace or publication system,provides server-side functionality, via a network 104 (e.g., theInternet or Wide Area Network (WAN)) to one or more clients. FIG. 1illustrates, for example, a web client 106 (e.g., a browser), and aprogrammatic client 108 executing on respective client machines 110 and112.

An Application Program interface (API) server 114 and a web server 116are coupled to, and provide programmatic and web interfaces respectivelyto, one or more application servers 118. The application servers 118host one or more marketplace applications 120 and payment applications122. The application servers 118 are, in turn, shown to be coupled toone or more database servers 124 that facilitate access to one or moredatabases 126.

The marketplace applications 120 may provide a number of marketplacefunctions and services to users that access the networked system 102.The payment applications 122 may likewise provide a number of paymentservices and functions to users. The payment applications 122 may allowusers to accumulate value (e.g., in a commercial currency, such as theU.S. dollar, or a proprietary currency, such as “points”) in accounts,and then later o redeem the accumulated value for products (e.g., goodsor services) that are made available via the marketplace applications120. While the marketplace and payment applications 120 and 122 areshown in FIG. 1 to both form part of the networked system 102, it willbe appreciated that, in alternative embodiments, the paymentapplications 122 may form part of a payment service that is separate anddistinct from the networked system 102.

Further, while the system 100 shown in FIG. 1 employs a client-serverarchitecture, the present disclosure is of course not limited to such anarchitecture, and could equally well find application in a distributed,or peer-to-peer, architecture system, for example. The variousmarketplace and payment applications 120 and 122 could also beimplemented as standalone software programs, which do not necessarilyhave networking capabilities.

The web client 106 accesses the various marketplace and paymentapplications 120 and 122 via the web interface supported by the webserver 116. Similarly, the programmatic client 108 accesses the variousservices and functions provided by the marketplace and paymentapplications 120 and 122 via the programmatic interface provided by theAPI server 114. The programmatic client 108 may, for example, be aseller application (e.g., the TurboLister application developed by eBayInc., of San Jose, Calif.) to enable sellers to author and managelistings on the networked system 102 in an off-line manner, and toperform batch-mode communications between the programmatic client 108and the networked system 102.

FIG. 1 also illustrates a third party application 128, executing on athird party server machine 130, as having programmatic access to thenetworked system 102 via the programmatic interface provided by the APIserver 114. For example, the third party application 128 may, utilizinginformation retrieved from the networked system 102, support one or morefeatures or functions on a website hosted by the third party. The thirdparty website may, for example, provide one or more promotional,marketplace or payment functions that are supported by the relevantapplications of the networked system 102.

FIG. 2 is a diagram illustrating a progression, in accordance with anexample embodiment, of dynamic alteration of a user interface. Picturedhere are a mobile device 200 a, 200 b, 200 c in three states. It shouldbe noted that while a mobile device is depicted, a similar process couldrun on any electronic device. Beginning with the mobile device 200 a inthe first state, it can be seen that the user interface 202 a hasvarious sections, including a search bar 204, an activity dashboard 206,a merchandise area 208, and an advertisement 210. For discussionpurposes, this may be referred to as a default or beginning layout,although since the methods described herein are dynamically applied,there need not be any state that is strictly known as a default orbeginning layout because the layout my simply be continuously adjusted.The user interface 202 a here may depict an interface to an onlineauction web site, although one of ordinary skill in the art willrecognize that this disclosure can apply to other types of userinterfaces as well.

Within the activity dashboard 206 are three activities: watching 212(for items in the online auction the user has selected as being ofinterest), buying 214 (for items in the online auction the user has bidon), and selling 216 (for items in the online auction the user isselling).

Within the merchandise area 208 may be a number of items 218, 220, 222.Here the items depicted are in separate categories, labelled ascategories A, B, and C. For example, category A may be automobiles,category B may be toys, and category C may be books. The system maydisplay, for example, a single item for each category representing theitem in the category that is likeliest to be of interest to the user(based, perhaps, on previous purchases or searches).

Turning to mobile device 200 b, which is in the second state, the userhas begun to use the user interface 202 b by selecting various of thesections of the user interface 202 b. Depicted here is use by pressingon a touchscreen of the mobile device 200 b. Various circles and circlegroupings 224 a-224 d represent “presses,” namely areas of the userinterface 202 b that the user has selected. Of course, it is notnecessary that the user interface 202 b be operated on a touchscreendisplay, and other types of user interaction may be measured other than“presses” on a touchscreen, such as clicks using a mouse or other inputdevice.

As can be seen by the patterns of circles and circle groupings 224 a-224d, the user has selected on the search bar 204 a number of times, on thebuying activity 214, and also selected on category A merchandise items218.

The system may track these interactions and adjust the user interface tobetter align with the user's apparent interests and usage preferences.Specifically, referring to mobile device 200 c, which is the thirdstate, the system here may dynamically adjust the activity dashboard 206in the user interface 202 c so that only a buying activity 214 isdepicted, since the user has expressed little or no interest in thewatching activity 212 or selling activity 216. The system may alsoremove the advertisement 210, since the user has expressed little or nointerest in that, and expand the merchandise area 208 to compensate,allowing for more items 226 a-226 f to be displayed. Lastly, given thatthe user has expressed interest in merchandise from category A (asevidence from the presses on item 218), the merchandise area 208 may bereconfigured to only display items 226 a-226 f from category A. Theresult is a custom designed interface that has been dynamically andautomatically reconfigured to the user's needs.

FIG. 3 is a diagram illustrating a progression, in accordance withanother example embodiment, of dynamic alteration of a user interface.Here, depicted are three states of the mobile device 300 a, 300 b, 300c. The user interface 302 a may include a search bar 304, an activitydashboard 306, a merchandise area 308, and an advertisement 310. Withinthe activity dashboard 306 are three activities: watching 312 (for itemsin the online auction the user has selected as being of interest),buying 314 (for items in the online auction the user has bid on), andselling 316 (for items in the online auction the user is selling).Within the merchandise area 308 may be a number of items 318, 320, 322.As shown by circles and circle groupings 324 a-324 e, the user hasselected on the search bar 304 and the advertisement 310, but not theother items of the user interface 302 a. The system may then dynamicallyalter the user interface 302 a into the user interface 302 b of mobiledevice 300 b, which is the second state. Here, the search bar 304remains, but the activity dashboard 306 and merchandise area 308 havebeen removed, in favor of advertisements 326-330, which representadvertisements of different types. The “type” of the advertisement may,in fact, be any categorization useful to differentiate advertisements,including differentiations based on the category of the advertised itemor service (e.g., automobile advertisement versus a drug advertisement),or based on the format of the advertisement (e.g., animatedadvertisement versus static advertisement).

As can be seen from the circles and circle groupings 332 a-332 c in theuser interface 302 b, the user has then subsequently continued to selecton the search bar 304 as well as on type B advertisement(s) 328. Thesystem may then respond by keeping the search bar 304 in the userinterface 302 c of the mobile device 300 c in the third state, butreplacing all advertisements 326, 328, 330 with advertisements 334-338of type B.

FIG. 4 is a diagram illustrating a progression, in accordance withanother example embodiment, of dynamic alteration of a user interface.Here, depicted are three states of the mobile device 400 a, 400 b, 400c. The user interface 402 a may include a first advertisement 404, asearch bar 406, a merchandise area 408, and a second advertisement 410.Within the merchandise area 408 may be a number of items 412-422. Asshown by circles and circle groupings 424 a-424 e, the user has selectedon the search bar 406 and the items 412-416 in the merchandise area 408,but not the other items 418-422 of the user interface 402 a. The systemmay then dynamically alter the user interface 402 a into the userinterface 402 b of mobile device 400 b, which is the second state. Here,the search bar 406 and merchandise area 408 remain, but theadvertisements 404, 410 have been removed. The merchandise area 408 hasbeen expanded to compensate.

As can be seen from the circles and circle groupings 426 a-426 b in theuser interface 402 b, the user has then subsequently continued to selecton the search bar 406. The system may then respond by removing allelements but the search bar 406 in the user interface 402 c of themobile device 400 c in the third state. This has greatly simplified theinterface for a user who is now, apparently, only interested insearching using the search bar 406.

In addition to basing its decision on user interactions, such as areaswhere the user has pressed, the system can also use other information inhow to dynamically alter the user interface. Information about the user,such as demographic or user interest information gleaned from a userprofile or other information source, can be used in altering the userinterface as well. FIG. 5 is a diagram illustrating a progression, inaccordance with another example embodiment, of dynamic alteration of auser interface. Here, the mobile device 500 a in the first stateincludes a user interface 502 a having a first advertisement 504, asearch bar 506, a merchandise area 508, and a second advertisement 510.Within the merchandise area 508 may be a number of items 512-522. Asshown by circles and circle groupings 524 a-524 e, the user has selectedon the search bar 506 and the items 512-516 in the merchandise area 508,but not the other items 518-522 of the user interface 502 a.Additionally, the system may then retrieve information about the user,such as the user's age. Here, two different states for the mobile device500 b, 500 c are possible next states depending upon whether the systemdetermines that the user is a child or a senior. In the mobile device500 b for the second state, if the user is a child, that informationalong with the previous interaction information from the circles andcircle groupings 524 a-524 e leads the system to provide a userinterface 502 b designed for a child and also custom designed for thisparticular child. The child user interface may, for example, includebright colors, simplistic shapes (such as circles 526 a, 526 b), andlanguage more appropriate for a child (such as replacing the word“Merchandise” with “Neat Stuff!” in the merchandise area 508.

Alternatively, if the system determined that the user was a senior, thatinformation along with the previous interaction information from thecircles and circle groupings 524 a-524 e leads the system to provide auser interface 502 c designed for a senior and also custom designed forthis particular senior. The senior interface may, for example, includevery large font and increased areas for the search bar 506 and themerchandise area 508.

The above examples depict areas of the user interface being removed, butit is also possible to add areas of the user interface. In someinstances, the areas may be added based on user interaction and variousassumptions that can be made about a user (e.g., if a user uses a searchbar a lot, he or she may wish to be presented with an additional searchtool instead of a browsing tool). In other instances, areas that havebeen previously removed could be reintroduced to the user interface togauge whether the user may now be interested in them. For example, auser's tastes may evolve over time, so that interest in certaincategories of merchandise may wane and interest in other categories maygrow. In order to capture this, merchandise from areas not necessarilyknown to be of interest based on previous interactions may be randomlyintroduced into the user interface, in order to allow the user toexpress interest in these categories. This may be extended not just toareas that were previously removed but new areas that have never beenintroduced as well.

Additionally, certain areas, such as advertisements, tend to lose theireffectiveness with overuse. Users, over time, learn to ignoreadvertisements that appear on their user interface. As such, removingthe advertisements only to reintroduce them at a later time allows theuser to be “retrained” to notice the advertisements once again. Thesystem may implement these and other strategies in determining how todynamically alter the user interface.

FIG. 6 is an interaction diagram illustrating a method 600, inaccordance with an example embodiment, of dynamically altering a userinterface. In this method 600, a user interface 602 (which may becontained on an electronic device such as a mobile device) interactswith a user interaction tracking module 604. The user interactiontracking module 604 may be contained on the same user device as the userinterface 602. A user interface modification module 606 may either belocated on the same electronic device as the other components 602, 604,or may be located on another device, such as on a web server.

At operation 608, user interactions with the user interface 602 may besent to the user interaction tracking module 604. Then at operation 610these interactions are reported to the user interface modificationmodule 606. This may occur in a number of ways. While the user interface602 and user interaction tracking module 604 are depicted as separatecomponents, in some embodiments the user interaction tracking module 604is actually built into the user interface 602, such that the userinteractions are automatically reported to the user interfacemodification module 606. The interactions may be logged and tracked. Insome embodiments, a summary report may be generated to the userinterface modification module 606 (e.g., the user has interacted witharea A 69 times, area B 52 times, area C 0 times, etc.). In otherembodiments, the raw data can be reported to the user interfacemodification module 606.

At operation 612 the user interaction modification module 606 maydynamically modify the user interface 602 based on the interactions. Ofcourse, as described above, other factors, such as user demographic orinterest information, could also be used in this dynamic modification.At operation 614, the dynamically modified user interface may be passedback. The whole process may then be repeated continuously, allowing foran always-up-to-date customized user interface 602. It should be notedthat the dynamic modification may happen periodically, either usingfixed periods (e.g., once an hour, once a day), or non-fixed periods, oreven randomly. In other embodiments, the modification occurs when acertain number of interactions have been recorded (e.g., every 1000interactions). If the periods are too short, it may be difficult to havetracked enough user interactions to be useful.

FIG. 7 is a flow diagram illustrating a method 700, in accordance withan example embodiment, of dynamically altering a user interface. Atoperation 702, a user interface is presented to a user. At operation704, user interaction with one or more elements of the user interface ismeasured. At operation 706, one or more of the elements of the userinterface are dynamically modified based on the measured userinteraction.

FIG. 8 is a flow diagram illustrating a method 800, in accordance withanother example embodiment, of dynamically altering a user interface. Atoperation 802, information regarding user interaction with one or moreelements of the user interface is received from an electronic device. Atoperation 804, one or more of the elements of the user interface aredynamically modified based on the measured user interaction. Atoperation 806, the dynamically modified user interface is returned tothe electronic device for display.

FIG. 9 shows a diagrammatic representation of a machine in the exampleform of a computer system within which a set of instructions for causingthe machine to perform any one or more of the methodologies discussedherein may be executed. In alternative embodiments, the machine operatesas a standalone device or may be connected (e.g., networked) to othermachines. In a networked deployment, the machine may operate in thecapacity of a server or a client machine in server-client networkenvironment, or as a peer machine in a peer-to-peer (or distributed)network environment. The machine may be a server computer, a clientcomputer, a personal computer (PC), a tablet PC, a set-top box (STB), apersonal digital assistant (PDA), a cellular telephone, a web appliance,a network router, switch or bridge, or any machine capable of executinga set of instructions (sequential or otherwise) that specify actions tobe taken by that machine. Further, while only a single machine isillustrated, the term “machine” shall also be taken to include anycollection of machines that individually or jointly execute a set (ormultiple sets) of instructions to perform any one or more of themethodologies discussed herein.

The example computer system 900 includes a processor 902 (e.g., acentral processing unit (CPU), a graphics processing unit (GPU), orboth), a main memory 904 and a static memory 906, which communicate witheach other via a bus 908. The computer system 900 may further include avideo display unit 910 (e.g., a liquid crystal display (LCD) or acathode ray tube (CRT)). The computer system 900 also includes analphanumeric input device 912 (e.g., a keyboard), a cursor controldevice 914 (e.g., a mouse), a disk drive unit 916, a signal generationdevice 918 (e.g., a speaker), and a network interface device 920.

The disk drive unit 916 includes a computer-readable medium 922 on whichis stored one or more sets of instructions 924 (e.g., software)embodying any one or more of the methodologies or functions describedherein. The instructions 924 may also reside, completely or at leastpartially, within the main memory 904 and/or within the processor 902during execution thereof by the computer system 900, with the mainmemory 904 and the processor 902 also constituting machine-readablemedia. The instructions 924 may further be transmitted or received overa network 926 via the network interface device 920.

While the machine-readable medium 922 is shown in an example embodimentto be a single medium, the term “machine-readable medium” should betaken to include a single medium or multiple media (e.g., a centralizedor distributed database, and/or associated caches and servers) thatstore the one or more sets of instructions 924. The term“machine-readable medium” shall also be taken to include any medium thatis capable of storing, encoding or carrying a set of instructions forexecution by the machine and that cause the machine to perform any oneor more of the methodologies described herein. The term“machine-readable medium” shall accordingly be taken to include, but notbe limited to, solid-state memories, optical and magnetic media, andcarrier wave signals.

Although the inventive concepts have been described with reference tospecific example embodiments, it will be evident that variousmodifications and changes may be made to these embodiments withoutdeparting from the broader spirit and scope of the inventive concepts.Accordingly, the specification and drawings are to be regarded in anillustrative rather than a restrictive sense.

The Abstract of the Disclosure is provided to comply with 37 C.F.R.§1.72(b), requiring an abstract that will allow the reader to quicklyascertain the nature of the technical disclosure. It is submitted withthe understanding that it will not be used to interpret or limit thescope or meaning of the claims. In addition, in the foregoing DetailedDescription, it can be seen that various features are grouped togetherin a single embodiment for the purpose of streamlining the disclosure.This method of disclosure is not to be interpreted as reflecting anintention that the claimed embodiments require more features than areexpressly recited in each claim. Rather, as the following claimsreflect, inventive subject matter lies in less than all features of asingle disclosed embodiment. Thus the following claims are herebyincorporated into the Detailed Description, with each claim standing onits own as a separate embodiment.

The invention claimed is:
 1. A method of dynamically optimizing a user interface on an electronic device, the method comprising: upon navigation by a user to a particular web site, presenting a user interface to a user, the user interface including one or more elements; measuring user interaction with the one or more elements of the user interface over a fixed period, the user interaction includes finger presses on a touchscreen on which the user interface is operating, the measuring includes identifying patterns over time indicating a history of the finger presses in relation to the one or more elements; and identifying a first element of the user interface in which the patterns of finger presses over the fixed period indicate a lack of interest on the part of the user; identifying a second element of the user interface in which the patterns of the finger presses over the fixed period indicate interest on the part of the user; identifying a third element of the user interface in which the patterns of the finger presses over, the fixed period indicate interest on the part of the user, the third element being an element in which a finger press activates a field in which the user is expected to type information; dynamically modifying the user interface based both on the measured user interaction and on information about the user entered by the user, the dynamically modifying including removing the first element from the user interface, removing the second element from the user interface but presenting a fourth element of the same type as the second element but not identical to the second element in the user interface, and expanding a size of the third element in the user interface; and presenting the dynamically modified user interface upon a future navigation by the user to the particular web site.
 2. The method of claim 1, wherein the dynamically modifying includes removing one or more elements of the user interface based on the user interaction.
 3. The method of claim 1, wherein the dynamically modifying includes reducing a size of one or more of the elements of the user interface based on the user interaction.
 4. The method of claim 1, wherein the dynamically modifying includes moving one or more elements of the user interface to a more prominent place on a display based on the user interaction.
 5. The method of claim 1, wherein the dynamically modifying includes altering font size of one or more elements of the user interface based on the user interaction.
 6. The method of claim 1, wherein the measuring includes measuring clicks by the user on the one or more elements of the user interface.
 7. The method of claim 6, wherein the clicks involve finger presses on a touchscreen displaying the user interface.
 8. The method of claim 1, wherein the information regarding the user is retrieved from a user profile.
 9. The method of claim 1, wherein the informaion regarding the user is the user's age.
 10. The method of claim 1, wherein the information regarding the user is the user's sex.
 11. The method of claim 1, wherein the information regarding the user is a location of the user.
 12. The method of claim 1, wherein the third element is a search box.
 13. A method of dynamically optimizing a user interface on an electronic device, the method comprising: upon navigation by a user to a particular web site, delivering the user interface to the electronic device for display; receiving information regarding user interaction over a fixed period with one or more elements of the user interface from the electronic device, the user interaction includes finger presses on a touchscreen on which the user interface is operating, the measuring includes identifying patterns over time indicating a history of the finger presses in relation to the one or more elements; identifying a first element of the user interface in which the patterns of finger presses over the fixed period indicate a lack of interest on the part of the user; identifying a second element of the user interface in which the patterns of the finger presses over the fixed period indicate interest on the part of the user; identifying a third element of the user interface in which the patterns of the finger presses over the fixed period indicate interest on the part of the user, the third element being an element in which a finger press activates a field in which the user is expected to type information; dynamically modifying the user interface based on the information regarding user interaction and based on information about the user entered by the user, the dynamically modifying including removing the first element from the user interface, removing the second element from the user interface but presenting a fourth element of the same type as the second element but not identical to the second element in the user interface, and expanding a size of the third element in the user interface; and upon a future navigation by the user to the particular web site, returning the dynamically modified user interface to the electronic device for display.
 14. The method of claim 13, wherein the dynamically modifying the one or more elements of the user interface is based also on information regarding the user interaction with one or more elements of the user interface received from one or more other electronic devices.
 15. A user device comprising: a user interface having one or more elements; a processor; a user interaction tracking module to measure user interaction with the one or more elements of the user interface over a fixed period, the user interface presented upon navigation by a user to a particular web site, the user interaction includes finger presses on a touchscreen on which the user interface is operating, the measuring includes identifying patterns over time indicating a history of the finger presses in relation to the one or more elements, to identify a first element of the user interface in which the patterns of finger presses over the fixed period indicate a lack of interest on the part of the user, identify a second element of the user interface in which the patterns of the finger presses over the fixed period indicate interest on the part of the user, and identify a third element of the user interface in which the patterns of the finger presses over the fixed period indicate interest on the part of the user, the third element being an element in which a finger press activates a field in which the user is expected to type information; and a user interface modification module to dynamically modify the user interface based on the information regarding user interaction and based on information about the user entered by the user, the dynamically modifying including removing the first element from the user interface, removing the second element from the user interface but presenting a fourth element of the same type as the second element, but not identical to the second element in the user interface, and expanding a size of the third element in the user interface, and to present the dynamically modified user interface upon a future navigation by the user to the particular web site.
 16. The user device of claim 15, further comprising a touchscreen, the user interaction tracking module measuring user interaction by tracking presses on the touchscreen.
 17. A server comprising: a processor; a user interaction tracking module to receive information regarding user interaction with one or more elements of a user interface of an electronic device over a fixed period, the user interface presented upon navigation by a user to a particular web site, to identify a first element of the user Interface In which the patterns of finger presses over the fixed period indicate a lack of interest on the part of the user, identify a second element of the user interface in which the patterns of the finger presses over the fixed period indicate interest on the part of the user, and identify a third element of the user interface in which the patterns of the finger presses over the fixed period indicate interest on the part of the user, the third element being an element in which a finger press activates a field in which the user is expected to type information; and a user interface modification module to dynamically modify the user interface based on the information regarding user interaction and based on information about the user entered by the user, the dynamically modifying including removing the first element, from the user interface, removing the second element from the user interface but presenting a fourth element of the same type as the second element but not identical to the second element in the user interface, and expanding a size of the third element in the user interface, and to present the dynamically modified user interface upon a future navigation by the user to the particular web site.
 18. The server of claim 17, wherein the server is a web server.
 19. A non-transitory computer-readable storage medium comprising instructions that, when executed by at least one processor of a machine, cause the machine to perform operations comprising: upon navigation by a user to a particular web site, presenting a user interface to a user, the user interface includes one or more elements; measuring user interaction with the one or more elements of the user interface over a fixed period, the user interaction includes finger presses on a touchscreen on which the user interface is operating, the measuring includes identifying patterns over time indicating a history of the finger presses in relation to the one or more elements; and identifying a first element of the user interface in which the patterns of finger presses over the fixed period indicate a lack of interest on the part of the user; identifying a second element of the user interface in which the patterns of the finger presses over the fixed period indicate interest on the part of the user; identifying a third element of the user interface in which the patterns of the finger presses over the fixed period indicate interest on the part of the user, the third element being an element in which a finger press activates a field in which the user is expected to type information; dynamically modifying the user interface based both on the measured user interaction and information about the user entered by the user, the dynamically modifying including removing the first element from the user interface, removing the second element from the user interface but presenting a fourth element of the same type as the second element but not identical to the second element in the user interface, and expanding a size of the third element in the user interface; and presenting the dynamically modified user interface upon a future navigation by the user to the particular web site.
 20. A non-transitory computer-readable storage medium comprising instructions that, when executed by at least one processor of a machine, cause the machine to perform operations comprising: receiving information regarding user interaction over a fixed period with one or more elements of the user interface from the electronic device, the user interaction includes finger presses on a touchscreen on which the user interface is operating, the measuring includes identifying patterns over time indicating a history of the finger presses in relation to the one or more elements; identifying a first element of the user interlace in which the patterns of finger presses over the fixed period indicate a lack of interest on the part of the user; identifying a second element of the user interface in which the patterns of the finger presses over the fixed period indicate interest on the part of the user; identifying a third element of the user interface in which the patterns of the finger presses over the fixed period indicate interest on the part of the user, the third element being an element in which a finger press activates a field in which the user is expected to type information; dynamically modifying the user interface based on the information regarding user interaction and based on information about the user entered by the user, the dynamically modifying including removing the first element from the user interface, removing the second element from the user interface but presenting a fourth element of the same type as the second element but not identical to the second element in the user interface, and expanding a size of the third element in the user interface; and returning the dynamically modified user interface to the electronic device for display. 